package appapi.dao;

import appapi.Request.InspectionPageReq;
import appapi.Request.MonthinspectionPageReq;
import appapi.Request.record.MonthRecPageReq;
import appapi.Vo.AddMonthinspectionVo;
import appapi.dto.MonthRecModel;
import appapi.dto.bridge.MonthExportDto;
import appapi.entity.Zhongjiao.EquipmentmaintenanDto;
import appapi.entity.Zhongjiao.MonthinspectionDto;
import appapi.Request.InspectionPageReq;import appapi.Request.MonthinspectionPageReq;import appapi.entity.Zhongjiao.MonthinspectionDto;
import appapi.entity.record.MonthInspectionEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.security.core.parameters.P;

import java.util.List;import java.util.Map;

/**
 * @author djq
 * @date 2023/6/2 9:27
 * @description:
 */

@Mapper
public interface MonthinspectionMapper {
    int deleteByPrimaryKey(Long monthId);

    int insert(MonthInspectionEntity record);

    int insertSelective(MonthInspectionEntity record);

    MonthInspectionEntity selectByPrimaryKey(Long monthId);

    int updateByPrimaryKey(MonthInspectionEntity record);

    List<Map<String, Object>> selectList(Long equip_id);

    List<Map<String, Object>> selectPageList(MonthinspectionPageReq monthinspectionPageReq);

    List<Map<String, Object>> selectMonthWarn(@Param("projId") Long projId);

    List<Map<String, Object>> selectMonthWarnByEquipIds(@Param("equipIds") List<Long> equipIds);

    List<Map<String, Object>> selectMonthInspectionPage(InspectionPageReq req);

    List<Map<String, Object>> selectInspectionList(Long equipId);

    Long insertMonth(AddMonthinspectionVo addMonthinspectionVo);

    List<Map<String, Object>> selectMonthMapById(Long monthId);

    List<MonthRecModel> queryList(MonthRecPageReq req);

    /**
     * 月检导出
     * @param req
     * @return
     */
    List<MonthExportDto> queryLists(MonthRecPageReq req);

    int deleteBatch(@Param("monthIds") List<Long> monthIds);

    Integer getCount(@Param("orgaId") Long orgaId);

}